/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.figmania.modelo;

import java.io.Serializable;
import java.util.Collection;
import java.util.Date;
import javax.persistence.*;
import org.hibernate.annotations.Cascade;
import org.hibernate.annotations.CascadeType;

/**
 *
 * @author Henrique
 */
@Entity
@Table(name="pacote_figurinha")
public class PacoteFigurinha implements Serializable {
    
    @Id
    @Column(name = "id_pacote")
    private int id;
    private int quantidadeFigurinhas;
    
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name="id_album", insertable=true, updatable=true)
    @Cascade(CascadeType.SAVE_UPDATE)
   private Album album;
    
    @Temporal(javax.persistence.TemporalType.DATE)
    private java.util.Date dataCompra;
    
    @ManyToMany(fetch=FetchType.LAZY)
    @JoinTable(name ="pacoteFigurinhas_possui_figurinhas", schema="figmania",
            joinColumns=@JoinColumn(name="id_pacoteFigurinha"),
            inverseJoinColumns=@JoinColumn(name="id_figurinha"))
    private Collection<Figurinha> figurinhas;

    public Album getAlbum() {
        return album;
    }

    public Date getDataCompra() {
        return dataCompra;
    }

    public int getId() {
        return id;
    }

    public int getQuantidadeFigurinhas() {
        return quantidadeFigurinhas;
    }

    public void setAlbum(Album album) {
        this.album = album;
    }

    public void setDataCompra(Date dataCompra) {
        this.dataCompra = dataCompra;
    }

    public void setId(int id) {
        this.id = id;
    }

    public void setQuantidadeFigurinhas(int quantidadeFigurinhas) {
        this.quantidadeFigurinhas = quantidadeFigurinhas;
    }

    public Collection<Figurinha> getFigurinhas() {
        return figurinhas;
    }

    public void setFigurinhas(Collection<Figurinha> figurinhas) {
        this.figurinhas = figurinhas;
    }
    
    
    
    
    
}
